﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using Aga.Psad.Mvc.Services.Dtos;

namespace Aga.Psad.Mvc.Services
{
    [ServiceContract]
    public interface IDocumentoDataService
    {
        [OperationContract]
        bool CheckService();

        [OperationContract]
        int NuevoDocumento(DocumentoDto documento);

        [OperationContract]
        void ActualizarDocumento(DocumentoDto documento);

        [OperationContract]
        DocumentoDto ObtenerDocumento(int clienteId, int tipoDocumento, string numeroDesde, int caja);

        [OperationContract]
        DocumentoDto ObtenerDocumentoByNumeroDesde(int clienteId, int tipoDocumento, string numeroDesde);

        [OperationContract]
        DocumentoDto ObtenerDocumentoById(int documentoId);

        [OperationContract]
        int ObtenerCantidadImagenesDocumento(int documentoId);

        [OperationContract]
        int NuevaImagen(ImagenDto imagen);

        [OperationContract]
        DocumentoDto InformatizarDocumento(int clienteId, int tipoDocumentoId, string numeroDesde, int caja, int numeroImagenes);

        [OperationContract]
        TipoDocumentoDto[] ObtenerTiposDeDocumento();

        [OperationContract]
        ClienteDto[] ObtenerClientes();

        [OperationContract]
        ClienteDto[] ObtenerClientesPorTipo(int tipo);
    }
}
